package com.CodeCraft.bean;

import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * 描述:
 * </p>
 *
 * @author Dorain
 * @version 1.0.0
 * @since 2025/3/30
 */
public class TableInfo {

    /*表名*/
    private String tableName;

    /*把表名转成一个Bean 如 tb_product_info ==> productInfo*/
    private String beanName;

    /*参数名称*/
    private String beanParamName;

    /*表注解*/
    private String comment;

    /*字段信息*/
    private List<FiledInfo> filedList;

    /*唯一索引集合*/
    private Map<String,List<FiledInfo>> keyIndexMap=new LinkedHashMap(); //用双向链表 有序的

    /*是否有date类型*/
    private boolean haveDate;
    /*是否有时间类型*/
    private boolean haveDateTime;

    /*是否有BigDecimal类型*/
    private boolean haveBigDecimal;

    public String getTableName() {
        return tableName;
    }

    public void setTableName(String tableName) {
        this.tableName = tableName;
    }

    public String getBeanName() {
        return beanName;
    }

    public void setBeanName(String beanName) {
        this.beanName = beanName;
    }

    public String getBeanParamName() {
        return beanParamName;
    }

    public void setBeanParamName(String beanParamName) {
        this.beanParamName = beanParamName;
    }

    public String getComment() {
        return comment;
    }

    public void setComment(String comment) {
        this.comment = comment;
    }

    public List<FiledInfo> getFiledList() {
        return filedList;
    }

    public void setFiledList(List<FiledInfo> filedList) {
        this.filedList = filedList;
    }

    public Map<String, List<FiledInfo>> getKeyIndexMap() {
        return keyIndexMap;
    }

    public void setKeyIndexMap(Map<String, List<FiledInfo>> keyIndexMap) {
        this.keyIndexMap = keyIndexMap;
    }

    public boolean isHaveDate() {
        return haveDate;
    }

    public void setHaveDate(boolean haveDate) {
        this.haveDate = haveDate;
    }

    public boolean isHaveDateTime() {
        return haveDateTime;
    }

    public void setHaveDateTime(boolean haveDateTime) {
        this.haveDateTime = haveDateTime;
    }

    public boolean isHaveBigDecimal() {
        return haveBigDecimal;
    }

    public void setHaveBigDecimal(boolean haveBigDecimal) {
        this.haveBigDecimal = haveBigDecimal;
    }
}
